#ifndef REGISTROMATRIZINICIAL_H
#define	REGISTROMATRIZINICIAL_H

#include <list>
#include <iterator>
#include <fstream>
#include <string>
#include <cstring>
#include <iostream>

class registroMatrizInicial {
public:
    registroMatrizInicial(unsigned int nro_doc,unsigned int rep, std::string term);
    /* ***NUEVO*** */
    registroMatrizInicial(unsigned int nro_doc,unsigned int rep, std::string term,unsigned int* vecPosTerm);
    /* ***FIN NUEVO*** */
    registroMatrizInicial();
    registroMatrizInicial(const registroMatrizInicial& orig);
    friend bool operator<(registroMatrizInicial& reg1, registroMatrizInicial& reg2);
    bool operator<(registroMatrizInicial& reg1);
    friend bool operator==(registroMatrizInicial& reg1, registroMatrizInicial& reg2);
    virtual ~registroMatrizInicial();
    static int tamanioRegistro(registroMatrizInicial& reg2){
                return (sizeof reg2.nro_documento +
                    sizeof reg2.repeticiones + sizeof reg2.termino + sizeof (int));
        }
    void aumentarFrecuencia();
    std::string getTermino(){return this->termino;}
    int getFrecuencia(){return this->repeticiones;}
    int getNroDocumento(){return this->nro_documento;}
    unsigned int* getVecPosTerm(){return this->vecPosTerm;}
private:
    std::string termino;
    unsigned int nro_documento;
    unsigned int repeticiones;
    unsigned int* vecPosTerm;
};

#endif	/* REGISTROMATRIZINICIAL_H */
